Frequency Division Multiplexing is used in a number of commercial wired and wireless applications, such as local-area network (LAN) products. It is a communications technique that divides a communications channel into a number of frequency bands. A sub-carrier carrying a portion of the user information is transmitted in each band. In OFDM (Orthogonal Frequency Division Multiplexing) systems, each sub-carrier is orthogonal with every other sub-carrier.
Typical commercial wireless applications include a transmitter with an antenna which transmits a signal through a channel where it undergoes reflection, absorption, attenuation, and takes multiple paths, as a result of which, the signal gets distorted when it reaches a receiver that is situated at a distance. OFDM systems are chosen for such applications because of their capability to operate in multi-path channels.
Considering one such OFDM system, the frequency domain representation of the data transmitted for the kth sub-carrier during the nth OFDM symbol of a frame is denoted as Xn(k) and the received signal is denoted as Rn(k). The channel distortion experienced by the kth sub-carrier is denoted as H(k). It is assumed that the channel stays constant for the duration of the frame. In a simplified model, their relation can be expressed asRn(k)=Xn(k)H(k)+Wn(k),  Equation 1
where Wn(k) is the Additive Noise.
Channel estimation is a process followed for estimating the channel distortion on each sub-carrier. Usually, a known preamble sequence Xp is transmitted along with the payload for the various estimation and synchronization functions. The channel estimate which is denoted by Ĥ, can be derived as the ratio the received preamble Rp(k) The channel estimate which is denoted by Ĥ, is the ratio of the received preamble Rp(k) to the transmitted preamble Xp(k) and is given by H(k)+εh where εh is the error in channel estimation due to noise.
The above is expressed as
                                                                                          H                  ^                                ⁡                                  (                  k                  )                                            =                                                                    R                    p                                    ⁡                                      (                    k                    )                                                                                        X                    p                                    ⁡                                      (                    k                    )                                                                                                                          =                                                H                  ⁡                                      (                    k                    )                                                  +                                                      ɛ                    H                                    ⁡                                      (                    k                    )                                                                                                          Equation        ⁢                                  ⁢        2            
In systems where more than one preamble is available, estimates can be averaged to reduce this error. For example, an IEEE 802.11a system has two identical Long Preamble sequences, which can be used for estimating the channel as follows:
                                                                                          H                  ^                                ⁡                                  (                  k                  )                                            =                                                1                  2                                ⁢                                  (                                                                                                              R                                                      LP                            ⁢                                                                                                                  ⁢                            1                                                                          ⁡                                                  (                          k                          )                                                                    +                                                                        R                                                      LP                            ⁢                                                                                                                  ⁢                            2                                                                          ⁡                                                  (                          k                          )                                                                                                                                    X                        LP                                            ⁡                                              (                        k                        )                                                                              )                                                                                                        =                                                H                  ⁡                                      (                    k                    )                                                  +                                                                                                    W                                                  LP                          ⁢                                                                                                          ⁢                          1                                                                    ⁡                                              (                        k                        )                                                              +                                                                  W                                                  LP                          ⁢                                                                                                          ⁢                          2                                                                    ⁡                                              (                        k                        )                                                                                                  2                    ⁢                                                                  X                        LP                                            ⁡                                              (                        k                        )                                                                                                                                                                    =                                                H                  ⁡                                      (                    k                    )                                                  +                                                      ɛ                    H                                    ⁡                                      (                    k                    )                                                                                                          Equation        ⁢                                  ⁢        3            If there were no noise, Ĥ would have been equal to H. For accuracy in determining the data, this error term needs to be minimized. A common method used to minimize this error is by using a smoothing filter. The smoothing filter averages over multiple, say N adjacent tones in the frequency domain. Thus, for a channel with fixed value of H, the H term remains constant while the noise terms are reduced on averaging. However, when H is different for different tones, as in the case of fading channels, the variation in H introduces a new error component. At high Signal to Noise Ratio (SNR) values, this error component may actually be larger than the original error due to noise. Thus, this method, which is commonly used, has its limitations when used in certain conditions.
Another method that is commonly used for improving the estimate of Ĥ is Decision Feedback Equalization (DFE). According to this method, Ĥ is initialized with an initial inaccurate estimate calculated from the preamble values to calculate the equalized symbol Re,n, which has a noise component. This Re,n is passed through the demodulator and decoder. It is assumed that the demodulator and decoder are able to recover data without errors, and this can be used to find the originally transmitted Xp by passing again through the transmit chain. This assumption is reasonable because, if the demodulator/decoder fails to correct the errors, the packet is already lost, and applying DFE for subsequent symbols will not help in recovering the packet. This is then fed back to the equalizer to compare with the received Re,n (which is stored) to compute a measure of error in the channel estimate. This error is subtracted from the future symbols. This process is repeated for each symbol in the packet. Thus the initial coarse estimate is iteratively improved. But there are major practical constraints in employing DFE under certain conditions, such as low data rates in IEEE 802.11a/g systems. Further, when used at low SNRs (high noise), a wrong error feedback through DFE, can even increase the possibility of packet error. So, the DFE under certain conditions can be limited or even detrimental.
Zero-forcing equalization in the presence of fading channels can lead to degradation due to noise enhancement. This degradation can be reduced by assigning a reliability metric or weight to each value that is fed to the decoder based on the corresponding value of Ĥ. When Ĥ is small, the error term is high and hence the value that is sent to the decoder is less reliable. This method, which is known as WCSI (Weighted Channel State Information Decoding), when used separately has certain limitations due to limited accuracy of channel estimates; however when it is used in conjunction with the certain other elements as described herein, it provides significant advantages under various conditions.
Decision Feedback based channel tracking for channel estimation and equalization: Examples of prior art publications in this context include: 1) Hsuan-Yu Liu et. al., “Combining Adaptive smoothing and Decision-Directed Channel Estimation Schemes for OFDM-WLAN systems”, in Proc. Of ISCAS'2003, Bangkok Thailand, May 2003; 2) Sun et al, “Decision feedback channel estimation and pilot tracking for OFDM systems”, U.S. Patent Application Publication No. 20040066773, Apr. 8, 2004.
The equalized symbols after Zero-forcing equalization are given by
                                                                                          R                                      e                    ,                    n                                                  ⁡                                  (                  k                  )                                            =                                                                    R                    n                                    ⁡                                      (                    k                    )                                                                                        H                    ^                                    ⁡                                      (                    k                    )                                                                                                                          =                                                                                                                  X                        n                                            ⁡                                              (                        k                        )                                                              ⁢                                          H                      ⁡                                              (                        k                        )                                                                              +                                                            W                      n                                        ⁡                                          (                      k                      )                                                                                                            H                    ^                                    ⁡                                      (                    k                    )                                                                                                                          =                                                                                                                  X                        n                                            ⁡                                              (                        k                        )                                                              ·                                          [                                                                                                    H                            ^                                                    ⁡                                                      (                            k                            )                                                                          -                                                                              ɛ                            H                                                    ⁡                                                      (                            k                            )                                                                                              ]                                                        +                                                            W                      n                                        ⁡                                          (                      k                      )                                                                                                            H                    ^                                    ⁡                                      (                    k                    )                                                                                                          Equation        ⁢                                  ⁢        4            
Here, the constellation error, εX,n(k) can be expressed as
                                                                                          ɛ                                      X                    ,                    n                                                  ⁡                                  (                  k                  )                                            =                                                                    R                                          e                      ,                      n                                                        ⁡                                      (                    k                    )                                                  -                                                      X                    n                                    ⁡                                      (                    k                    )                                                                                                                          =                                                                                          -                                                                        ɛ                          H                                                ⁡                                                  (                          k                          )                                                                                      ·                                                                  X                        n                                            ⁡                                              (                        k                        )                                                                              +                                                            W                      n                                        ⁡                                          (                      k                      )                                                                                                            H                    ^                                    ⁡                                      (                    k                    )                                                                                                          Equation        ⁢                                  ⁢        5            
This error εXn(k), can be used to estimate the Channel estimation error εH(k) as follows:
                                          1            N                    ⁢                                    ∑                              n                =                1                            N                        ⁢                                                            ɛ                                      X                    ,                    n                                                  ⁡                                  (                  k                  )                                                                              X                  n                                ⁡                                  (                  k                  )                                                                    =                                            -                                                ɛ                  H                                ⁡                                  (                  k                  )                                                                                    H                ^                            ⁡                              (                k                )                                              +                                    1                              N                ·                                                      H                    ^                                    ⁡                                      (                    k                    )                                                                        ⁢                                          ∑                                  n                  =                  1                                N                            ⁢                                                                    W                    n                                    ⁡                                      (                    k                    )                                                                                        X                    n                                    ⁡                                      (                    k                    )                                                                                                          Equation        ⁢                                  ⁢        6            
As N becomes larger, the noise sum becomes smaller due to averaging and, a progressively purer estimate of εH(k) is obtained:
                                                                        ɛ                H                            ⁡                              (                k                )                                                                    H                ^                            ⁡                              (                k                )                                              ≈                      (                          1              -                                                1                  N                                ⁢                                                      ∑                                          n                      =                      1                                        N                                    ⁢                                                                                    R                                                  e                          ,                          n                                                                    ⁡                                              (                        k                        )                                                                                                            X                        n                                            ⁡                                              (                        k                        )                                                                                                                  )                          =                  1          -                                    r                              X                ,                N                                      ⁡                          (              k              )                                                          Equation        ⁢                                  ⁢        7            
Estimates of Xn(k), {circumflex over (X)}n(k), can be obtained by making nearest neighbor decisions on the equalized symbols, or, if there is forward error correction in the system, or by feeding back the decoder decisions through the transmit chain. The latter is clearly more accurate, as it can correct errors to give a better estimate of Xn(k), but at the cost of complexity and delay.
Once the channel estimation error εH(k) is known, the equalizer outputs can be refined as follows:
                                                                                          Y                  n                                ⁡                                  (                  k                  )                                            =                                                                    R                                          e                      ,                      n                                                        ⁡                                      (                    k                    )                                                  +                                                                                                    X                        ~                                            n                                        ⁡                                          (                      k                      )                                                        ⁢                                                            ɛ                                              H                        ,                                                  n                          -                          1                                                                                      ⁡                                          (                      k                      )                                                        ⁢                                                                                    H                        ^                                            ⁡                                              (                        k                        )                                                                                    -                      1                                                                                                                                              =                                                                    R                                          e                      ,                      n                                                        ⁡                                      (                    k                    )                                                  +                                                                                                    X                        ~                                            n                                        ⁡                                          (                      k                      )                                                        ·                                      (                                          1                      -                                                                        r                                                      X                            ,                                                          n                              -                              1                                                                                                      ⁡                                                  (                          k                          )                                                                                      )                                                                                                          Equation        ⁢                                  ⁢        8            
For the prediction of the current symbol Xn(k), an approximation {tilde over (X)}n(k)=Re,n(k) is used. Another issue is that when Xn(k) is small, the estimation can actually become worse because of noise enhancement in the term Re,n(k)/Xn(k). To prevent this, rX(k) is weighted to give smaller weights to contributions due to small |Xn(k)| as shown below:
                                          r                          X              ,                              n                -                1                                              ⁡                      (            k            )                          =                  {                                                                                                                1                      ,                                                                                                                          if                        ⁢                                                                                                  ⁢                        n                                            =                      1                                                                                                                                                                                                                                                                                                                                                    (                                                                          1                                      -                                      w                                                                        )                                                                    ⁢                                                                                                            r                                                                              X                                        ,                                                                                  n                                          -                                          2                                                                                                                                                      ⁡                                                                          (                                      k                                      )                                                                                                                                      +                                                            ⁢                                                                                                                                                                                                                                                                                                                                                        R                                                                      e                                    ,                                                                          n                                      -                                      1                                                                                                                                      ⁡                                                                  (                                  k                                  )                                                                                            ⁢                                                                                                                                                                          X                                      ^                                                                                                              n                                      -                                      1                                                                                                        ⁡                                                                      (                                    k                                    )                                                                                                                                    -                                  1                                                                                            ⁢                              w                                                                                                                          ,                                                                            otherwise                                                              ⁢                                                          ⁢              where              ⁢                                                          ⁢              w                        =                                                                                                                      X                      ^                                                              n                      -                      1                                                        ⁡                                      (                    k                    )                                                                                                                                                        X                                                        max                                ⁢                                  (                                      n                    -                    1                                    )                                                                                        Equation        ⁢                                  ⁢        9            
Using decision feedback equalization has some practical limitations. For example, for a finite Traceback Viterbi algorithm in an IEEE 802.11a/g system, there is latency between decoder inputs and outputs till enough bits are received to perform a traceback and get the decoded bits. These bits are then passed through the transmit chain and the modulated symbols thus achieved are compared with the received symbols, and the error vector is calculated. This causes additional delay and demands a lot of extra storage, especially at lower data rates.
Secondly, for lower data rates operating typically at lower SNRs, the initial DFE weight vectors will be very noisy and may cause a packet error. In such cases, the effect of using DFE may be limited or even detrimental. The implementation of data rate based DFE selection is beneficial in this context.
Weighted Channel State Information (WCSI) decoding for channel estimation and equalization:
This approach targets the component of error in the equalizer outputs Re,n(k) corresponding to
            W      n        ⁡          (      k      )                  H      ^        ⁡          (      k      )      (also refer to equation 4 above). For channels in deep fades, when |Ĥ(k)| is very small, this term can become a significant cause of errors. To prevent this, a reliability-metric is associated with each of the bits being decoded by the Viterbi algorithm. This reliability metric is based on the channel experienced by the particular bit. The bits on the sub carriers, which are in a fade, have low reliability (as they are likely to have a large noise component) and hence should be given less weight in Viterbi decoding. The sub carriers with a stronger signal (large |Ĥ(k)|) should be given large weights. In the absence of any weighting, the Viterbi metrics D(k)'s are calculated as follows:
                              D          ⁡                      (            k            )                          =                              ∑            n                    ⁢                                                                                    y                  n                                -                                                      a                    n                                    ⁡                                      (                    k                    )                                                                                      2                                              Equation        ⁢                                  ⁢        10            where {yn} represents the coded input sequence to Viterbi and {an(k)} is the transmit sequence associated with a particular path ‘k’ in the trellis.
Conventional techniques weigh the branch metric calculation with the channel estimates for each bit as below
                                          D            ′                    ⁡                      (            k            )                          =                              ∑            n                    ⁢                                    ρ              n              2                        ⁢                                                                                                y                    n                                    -                                                            a                      n                                        ⁡                                          (                      k                      )                                                                                                  2                                                          Equation        ⁢                                  ⁢        11            where {ρn} is the sequence of channel estimates experienced by yn and can be derived from Ĥ. such method gives considerable improvement in performance under multipath conditions, but at the cost of higher complexity.
For reducing the computational complexity of WCSI decoding, the channel state information {ρn} may be quantized to a small number of soft bits Nsb(=1, 2, 3 . . . ). The method of erasures is a further simplification with Nsb=1, and is equivalent to choosing a weight of 0 or 1 based on a threshold. This completely eliminates the need for multiplying the branch metric with a weight; instead, a branch contributes to the metric only if the weight associated with it is 1, and not otherwise. The benefit in this approach is reduced compared to WCSI but is still significant compared to the un-weighted Viterbi approach.
Channel estimation, Equalization, or Decoding methods govern the performance of the system. Conventional methods that are used to carry out these steps suffer from drawbacks such as the inclusion of an error that may be larger than the original error that the method intended to correct under certain conditions, and practical constraints such as excessive memory and other hardware requirements for implementation. Even though the above-described approaches may be individually known, there is a need for using particular parameters for limiting the use of these approaches, and for providing modification to the above approaches for obtaining a unique advantage in determining the performance of these systems. An example of a related prior art publication is Sari, H.; Karain, G.; Jeanclaud, I., “Frequency Domain Equalization of mobile radio and terrestrial broadcast channels”, Global Telecommunications Conference, GlobeComm, 1994.